#和集合一样，字典也是用{}来表示，但是内容是一个个的键值对 ----key:value
#定义空字典是element = {}， 定义一个空集合是element = set()
#字典中的key(：前面的元素)是不允许重复的
#字典也不允许使用下标索引，只能使用对应的key值来得到对应的值
my_dictor1 = {"Mr.feng": 99, "Mis.yang":89, "Miss.wang":90}
print(f"字典是{my_dictor1}, 类型是：{type(my_dictor1)}")

print(f"{my_dictor1['Mis.yang']}")

#字典中嵌套字典

stu_score_dictor = {
    "冯家睿":{
        "chinese":99,
        "math":90,
        "english":80
    }, "林俊杰":{
        "chinese":100,
        "math":20,
        "english":70
    },"周杰伦":{
        "chinese":30,
        "math":48,
        "english":20
    }
}

print(f"嵌套元组为：{stu_score_dictor}")
print(f"查询周杰伦英语多少分：{stu_score_dictor["周杰伦"]["english"]}")


my_dictor = {"Mr.feng": 99, "Mis.yang":89, "Miss.wang":90}
#----------------新增元素或替换元素(替换已有的，新增没有的)
my_dictor["Mr.tang"] = 80
print(f"{my_dictor}")
my_dictor["Mr.feng"] = 1000000
print(f"{my_dictor}")

#dic.pop("key")----------删除并且赋值给变量元素
score = my_dictor.pop("Mr.feng")
print(f"删除后的字典为：{my_dictor}, 删除的成绩为：{score}")

#dic.keys()----------得到全部的key，并且将其组合到一个列表之中
my_dictor = {"Mr.feng": 99, "Mis.yang":89, "Miss.wang":90}
keys = my_dictor.keys()
print(f"所有的key是：{keys}")

#---------字典元素不能使用while循环来遍历，只能使用for循环遍历


data_dictor = {
    "wanglihong":{
        "部门":"科技部",
        "工资":3000,
        "级别":1
    }, "zhoujielun":{
        "部门":"市场部",
        "工资":5000,
        "级别":2
    }, "linjunjie":{
        "部门":"市场部",
        "工资":7000,
        "级别":3
    }, "zhangxueyou":{
        "部门":"科技部",
        "工资":4000,
        "级别":1
    }, "liudehua":{
        "部门":"市场部",
        "工资":6000,
        "级别":2
    }
}

print(f"信息是{data_dictor}")

for ele in data_dictor:
    if data_dictor[ele]["级别"] == 1:
        data_dictor[ele]["级别"] += 1
        data_dictor[ele]["工资"] += 1000

print(f"信息是{data_dictor}")



#sorted()------------对数据容器进行排序,不管对什么数据容器进行排序后的结果都会放到列表之中
my_list = [1,2,3,4,3,2,4,5,1,3,5,2,31]
print(f"顺序排序后的列表是：{sorted(my_list)}")
print(f"倒叙排序后的列表是：{sorted(my_list, reverse=True)}")
